package com.gk.panda.apis.entity.deviceManager.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * @ClassName: SaveDeviceDataDto
 * @Description: 新增修改设备请求参数
 * @author: Sir.yang
 * @date: 2022/11/7 18:41
 * @version: 1.0
 **/
@ApiModel(value="新增修改设备请求参数")
@Data
public class SaveOrChangeDeviceDataDto {

    /**
     * 主键ID
     */
    @ApiModelProperty(value="设备ID")
    private Integer deviceId;

    /**
     * 机构ID
     */
    @ApiModelProperty(value="机构ID")
    @NotNull(message = "机构ID不能为空")
    private Integer fkOrgId;

    /**
     * 所属机构
     */
    @ApiModelProperty(value="所属机构")
    private String orgName;

    /**
     * 设备名称
     */
    @ApiModelProperty(value="设备名称")
    private String deviceName;

    /**
     * 设备IP
     */
    @ApiModelProperty(value="设备IP")
    private String deviceIp;

    /**
     * 设备编号
     */
    @ApiModelProperty(value="设备编号")
    private String deviceSn;

    /**
     * 设备类型
     */
    @ApiModelProperty(value="设备类型")
    private String deviceType;

    /**
     * 设备型号
     */
    @ApiModelProperty(value="设备型号")
    private String deviceMode;

    /**
     * 经度
     */
    @ApiModelProperty(value="经度")
    private String longitude;

    /**
     * 纬度
     */
    @ApiModelProperty(value="纬度")
    private String latitude;

    /**
     * 出厂日期
     */
    @ApiModelProperty(value="出厂日期")
    private String productionDate;

    /**
     * 厂家名称
     */
    @ApiModelProperty(value="厂家名称")
    private String factoryName;

    /**
     * 布设时间
     */
    @ApiModelProperty(value="布设时间")
    private String deploymentTime;

    /**
     * 布设人ID
     */
    @ApiModelProperty(value="布设人账号")
    @NotNull(message = "布设人账号不能为空")
    private String fkDeployment;

    /**
     * 布设人名称
     */
    @ApiModelProperty(value="布设人名称")
    private String deploymentName;

    /**
     * 设备状态：0：正常，1：异常
     */
    @ApiModelProperty(value="设备状态：0：正常，1：异常")
    private Integer deviceStatus;

    /**
     * 是否球机，0：是，1：否
     */
    @ApiModelProperty(value="是否球机，0：是，1：否")
    private Integer ifPtz;

    /**
     * 设备备注
     */
    @ApiModelProperty(value="设备备注")
    private String deviceRemark;

    /**
     * 设备在线地址
     */
    @ApiModelProperty(value="设备在线地址")
    private String deviceOnlineUrl;

    /**
     * 设备地点
     */
    @ApiModelProperty(value="设备地点")
    private String deviceAddress;

    /**
     * 模块类型：红外相机：infrared_camera，摄像机：video_camera，生态设备：ecological_equipment
     */
    @ApiModelProperty(value="模块类型：红外相机：infrared_camera，摄像机：video_camera，生态设备：ecological_equipment")
    @NotBlank(message = "模块类型不能为空")
    private String modelType;
}
